/* Janus Chat - Version 1.0
 * Authors: Matthew Perry
 *          Michael Freid
 *          Marc Latou
 *          Richard Lee
 *
 * The Janus Chat Client is a highly secured
 * peer-to-peer chat client designed to facilitate
 * the transfer of sensitive data or as a communication
 * medium for the extra paranoid
 *
 * This file contains the header for a User class.
 * This class will serve as holder of preferences and the
 * encryption key of the current user */

#ifndef USER_H
#define USER_H

#include "jRsa.h"
#include <string>
using std::string;

class User
{
    private:
        string myMoniker;               /* The User's name */
        jRsa::publicKey myPublicKey;    /* RSA Public Key */
        jRsa::privateKey myPrivateKey;  /* RSA Private Key */

    public:
        User( const string& moniker = "Anon" );
        User( const string& moniker, jRsa::publicKey key );

        string getMoniker() const;
        void setMoniker( const string& moniker );
        jRsa::publicKey getPublicKey() const;
        jRsa::privateKey getPrivateKey() const;
};

#endif // USER_H
